package com.aplink.generic.pojo.controlspec;

import com.aplink.generic.cache.ContentDataManager;
import com.aplink.generic.pojo.ContentData;
import com.aplink.generic.util.ResourcesHelper;
import com.aplink.generic.util.validation.Validation;

public class GallerySpec extends ControlSpec {
	private static final long serialVersionUID = -7046052697448308778L;
	private boolean isLoadAll;
	private boolean isReadOnly;
	private String mBarcodeResultsID;
	private String mBarcodeType;
	private String mContentData;
	private ContentData mContentDataFile;
	private String mDefaultImage;
	private String mDeletePictureID;
	private int mImageHeight;
	private String mImagePath;
	private int mImageWidth;
	private float mMaxZoom;
	private float mMinZoom;
	private String mNoPhoto;
	private String mScanBarcode;
	private String mSelectFromGalleryID;
	private String mTakePictureID;
	private boolean isUpload;
	private Validation mValidation;

	public GallerySpec() {
		this.isLoadAll = true;
		isUpload = true;
	}

	public String getBarcodeResultsID() {
		return this.mBarcodeResultsID;
	}

	public String getBarcodeType() {
		return this.mBarcodeType;
	}

	public ContentData getContentData() {
		if (mContentDataFile == null) {
			mContentDataFile = ContentDataManager.getInstance().get(
					ResourcesHelper.getRawIdByName(mContentData));
		}
		return mContentDataFile;
	}

	public String getDefaultImage() {
		return this.mDefaultImage;
	}

	public String getDeletePictureID() {
		return this.mDeletePictureID;
	}

	public int getImageHeight() {
		return this.mImageHeight;
	}

	public String getImagePathColumn() {
		return this.mImagePath;
	}

	public int getImageWidth() {
		return this.mImageWidth;
	}

	public float getMaxZoom() {
		return this.mMaxZoom;
	}

	public float getMinZoom() {
		return this.mMinZoom;
	}

	public String getNoPhoto() {
		return this.mNoPhoto;
	}

	public String getScanBarcode() {
		return this.mScanBarcode;
	}

	public String getSelectFromGalleryID() {
		return this.mSelectFromGalleryID;
	}

	public String getTakePictureID() {
		return this.mTakePictureID;
	}

	public Validation getValidation() {
		return mValidation;
	}

	public boolean isLoadAll() {
		return this.isLoadAll;
	}

	public boolean isReadOnly() {
		return this.isReadOnly;
	}

	public void setBarcodeResultsID(final String barcodeResultsID) {
		this.mBarcodeResultsID = barcodeResultsID;
	}

	public void setBarcodeType(final String barcodeType) {
		this.mBarcodeType = barcodeType;
	}

	public void setContentData(final String contentData) {
		this.mContentData = contentData;
	}

	public void setDefaultImage(final String defaultImage) {
		this.mDefaultImage = defaultImage;
	}

	public void setDeletePictureID(final String deletePictureID) {
		this.mDeletePictureID = deletePictureID;
	}

	public void setImageHeight(final int imageHeight) {
		this.mImageHeight = imageHeight;
	}

	public void setImagePath(final String imagePath) {
		this.mImagePath = imagePath;
	}

	public void setImageWidth(final int imageWidth) {
		this.mImageWidth = imageWidth;
	}

	public void setLoadAll(final boolean isLoadAll) {
		this.isLoadAll = isLoadAll;
	}

	public void setMaxZoom(final float maxZoom) {
		this.mMaxZoom = maxZoom;
	}

	public void setMinZoom(final float minZoom) {
		this.mMinZoom = minZoom;
	}

	public void setNoPhoto(final String noPhoto) {
		this.mNoPhoto = noPhoto;
	}

	public void setReadOnly(final boolean isReadOnly) {
		this.isReadOnly = isReadOnly;
	}

	public void setScanBarcode(final String scanBarcode) {
		this.mScanBarcode = scanBarcode;
	}

	public void setSelectFromGalleryID(final String selectFromGalleryID) {
		this.mSelectFromGalleryID = selectFromGalleryID;
	}

	public void setTakePictureID(final String takePictureID) {
		this.mTakePictureID = takePictureID;
	}

	public void setValidation(Validation validation) {
		mValidation = validation;
	}

	public boolean isUpload() {
		return isUpload;
	}

	public void setUpload(boolean isUpload) {
		this.isUpload = isUpload;
	}
}
